Mechanically Verifying the Correctness of the Fast Fourier Transform in ACL2
نویسنده
چکیده
In [10], Misra introduced the powerlist data structure, which is well suited to express recursive, data-parallel algorithms. In particular, Misra showed how powerlists could be used to give simple descriptions to very complex algorithms, such as the Fast Fourier Transform (FFT). Such simplicity in presentation facilitates reasoning about the resulting algorithms, and in fact Misra was able to give a stunningly simple proof of the correctness of the FFT. In this paper, we show how this proof can be verified using ACL2. This strengthens Misra’s case that powerlists provide a suitable framework in which to define and reason about parallel algorithms, particularly using mechanical tools to aid in reasoning.
منابع مشابه
Mechanically Verifying Real-valued Algorithms in Acl2
ACL2 is a theorem prover over a total, rst-order, mostly quantiier-free logic, supporting deened and constrained functions, equality and congruence rewriting, induction, and other reasoning techniques. Based on the Boyer-Moore theorem prover, ACL2 manages to retain much of the avor of its predecessor, while providing a large number of enhancements, one of which is the direct support of rational...
متن کاملThe Correctness of the Fast Fourier Transform: A Structured Proof in ACL2
The powerlists data structure, created by Misra in the early 90s, is well suited to express recursive, data-parallel algorithms. Misra has shown how powerlists can be used to give simple descriptions to very complex algorithms, such as the Fast Fourier Transform (FFT). Such simplicity in presentation facilitates reasoning about the resulting algorithms, and in fact Misra has presented a stunnin...
متن کاملA Mechanically Checked Proof of aComparator Sort
We describe a mechanically checked correctness proof for the compara-tor sort algorithm underlying a microcode program in a commercially designed digital signal processing chip. The abstract algorithm uses an unlimited number of systolic comparator modules to sort a stream of data. In addition to proving that the algorithm produces an ordered permutation of its input, we prove two theorems that...
متن کاملProcessor Veri cation with Precise Exceptionsand Speculative
We describe a framework for verifying a pipelined microprocessor whose implementation contains precise exceptions, external interrupts, and speculative execution. We present our correctness criterion which compares the state transitions of pipelined and non-pipelined machines in presence of external interrupts. To perform the veriica-tion, we created a table-based model of pipeline execution. T...
متن کاملProof Styles in Operational Semantics
We relate two well-studied methodologies in deductive verification of operationally modeled sequential programs, namely the use of inductive invariants and clock functions. We show that the two methodologies are equivalent and one can mechanically transform a proof of a program in one methodology to a proof in the other. Both partial and total correctness are considered. This mechanical transfo...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1998